package com.xuecheng.content.service;

import com.xuecheng.base.model.PageParams;
import com.xuecheng.base.model.PageResult;
import com.xuecheng.content.model.dto.AddCourseDto;
import com.xuecheng.content.model.dto.CourseBaseInfoDto;
import com.xuecheng.content.model.dto.EditCourseDto;
import com.xuecheng.content.model.dto.QueryCourseParamsDto;
import com.xuecheng.content.model.po.CourseBase;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestBody;


@Service
//课程信息管理
public interface CourseBaseInfoService {
    /**
     * desciption 课程查询
     * @param pageParams 分页参数
     * @param QueryCourseParamsDto 查询条件
     * @return com.xuecheng.base.model.PageResult<com.xuecheng.content.model.po.CourseBase>
     * @Date 2023/3/7 14:52
     */
    PageResult<CourseBase> selectList(Long companyId,PageParams pageParams, QueryCourseParamsDto QueryCourseParamsDto);
    /**
     * desciption
     * @param companyId 所属机构id
     * @param addCourseDto 传入的课程信息
     * @return com.xuecheng.content.model.dto.CourseBaseInfoDto 返回传入的课程信息
     * @Date 2023/3/9 16:34
     */
    CourseBaseInfoDto createCourseBaseInfo(Long companyId, AddCourseDto addCourseDto);
/**
 * desciption 根据id查询课程信息和营销信息
 * @param id
 * @return com.xuecheng.content.model.dto.CourseBaseInfoDto
 * @Date 2023/3/10 18:00
 */
    CourseBaseInfoDto queryCourseInfo(Long id);
    /**
     * desciption 更新课程信息和营销信息
     * @param editCourseDto 修改后的信息
     * @return com.xuecheng.content.model.dto.CourseBaseInfoDto
     * @Date 2023/3/10 18:01
     */
    CourseBaseInfoDto updateCourseInfo(Long companyId,EditCourseDto editCourseDto);

    void deleteCourseInfo(Long companyId,Long id);

}
